package com.beta.dto.pay.yeepay;

import com.beta.em.pay.YeepayNotifyType;
import com.beta.em.pay.YeepayCardType;
import com.beta.em.pay.YeepayPayProduct;

import java.io.Serializable;
import java.util.Date;

/**
 * Created by vector on 2016/12/6.
 */
public class YeepayNotifyDto implements Serializable {

    private static final long serialVersionUID = 201905350464800675L;

    /**
     * 商户编号
     */
    private String customerNumber;

    /**
     * 商户订单号
     */
    private String requestId;

    /**
     * 返回码: 成功返回：1，其他请参考附录：8.1 返回码列表
     */
    private String code;

    /**
     * 通知类型： REDIRECT：重定向通知；SERVER ：服务器点对点通知
     */
    private YeepayNotifyType notifyType;

    /**
     * 易宝交易流水号
     */
    private String externalId;

    /**
     * 订单金额
     */
    private String amount;

    /**
     * 卡号后四位: 卡号后四位，目前支付产品类型为ONEKEY、DIRECT 时方有值
     */
    private String cardNumber;

    /**
     * 银行编码: 用户支付所用的银行
     */
    private String bankCode;

    /**
     * 银行卡类别： 支付产品类型为ONEKEY、DIRECT时方有值 DEBIT：储蓄卡 CREDIT：信用卡
     */
    private YeepayCardType cardType;

    /**
     * 支付成功时间
     */
    private Date payDate;

    /**
     * 支付方式
     */
    private YeepayPayProduct payProduct;

    public String getCustomerNumber() {
        return customerNumber;
    }

    public void setCustomerNumber(String customerNumber) {
        this.customerNumber = customerNumber;
    }

    public String getRequestId() {
        return requestId;
    }

    public void setRequestId(String requestId) {
        this.requestId = requestId;
    }

    public String getCode() {
        return code;
    }

    public void setCode(String code) {
        this.code = code;
    }

    public YeepayNotifyType getNotifyType() {
        return notifyType;
    }

    public void setNotifyType(YeepayNotifyType notifyType) {
        this.notifyType = notifyType;
    }

    public String getExternalId() {
        return externalId;
    }

    public void setExternalId(String externalId) {
        this.externalId = externalId;
    }

    public String getAmount() {
        return amount;
    }

    public void setAmount(String amount) {
        this.amount = amount;
    }

    public String getCardNumber() {
        return cardNumber;
    }

    public void setCardNumber(String cardNumber) {
        this.cardNumber = cardNumber;
    }

    public String getBankCode() {
        return bankCode;
    }

    public void setBankCode(String bankCode) {
        this.bankCode = bankCode;
    }

    public Date getPayDate() {
        return payDate;
    }

    public void setPayDate(Date payDate) {
        this.payDate = payDate;
    }

    public YeepayPayProduct getPayProduct() {
        return payProduct;
    }

    public void setPayProduct(YeepayPayProduct payProduct) {
        this.payProduct = payProduct;
    }

    public YeepayCardType getCardType() {
        return cardType;
    }

    public void setCardType(YeepayCardType cardType) {
        this.cardType = cardType;
    }
}
